It is important to ensure trustworthiness of data stored in non-volatile memory device, such as a flash memory. File system software is used to control various sub-stages of program and erase processes, for example, to accomplish data integrity. And all sub-stages are monitored to verify successfully complete without interruption. But interruptions can occur during any sub-stage due to power noise, power lockout, power loss, hardware reset, operation hang-ups, or the like. Such an interruption is referred to as irregular stoppage.
If an irregular stoppage occurs during a sector erase process, for example, the flash memory can be trapped in any one of the sub-stages. The indeterminate state can cause severe issues, such as read/verify errors, and the like. It also can cause unreliable detection of blank sectors because the sector may appear blank even though further erasure is required for reliable data storage.
One approach to address these issues includes performing a memory file system consistency check of all storage sectors during system power up for interrupted sector erase detection. In this approach, the system will restart a sector erase upon detection of a problem. In another approach sector erase status is evaluated during each system software sector erase process before execute blank check. If an indeterminate state is detected, the system is required to restart sector erase. Such solutions consume many clock cycles.